From: Gerd Moellmann Date: Fri, 5 Oct 2001 12:10:57 +0000 (+0000) Subject: (find-file-noselect): If file's read-only status has X-Git-Tag: archive/raspbian/1%29.2+1-2+rpi1^2~5^2~61818 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/www.github.com/%22bookmarks:///%22http:/www.example.com/cgi/%22https:/www.github.com/%22bookmarks:/?a=commitdiff_plain;h=a8d002d2a6127f6aee05eaa62293dd75c28ee31e;p=emacs.git (find-file-noselect): If file's read-only status has changed on disk, ask if buffer's read-only status should be changed, unless NOWARN is set. --- diff --git a/lisp/files.el b/lisp/files.el index bdd5604417d..84c167f756b 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -1069,6 +1069,19 @@ that are visiting the various files." (with-current-buffer buf (revert-buffer t t))))) (with-current-buffer buf + + ;; Check if a formerly read-only file has become + ;; writable and vice versa. + (let ((read-only (not (file-writable-p buffer-file-name)))) + (unless (eq read-only buffer-read-only) + (when (or nowarn + (let ((question + (format "File %s is %s on disk. Change buffer mode? " + buffer-file-name + (if read-only "read-only" "writable")))) + (y-or-n-p question))) + (setq buffer-read-only read-only)))) + (when (not (eq (not (null rawfile)) (not (null find-file-literally)))) (if (buffer-modified-p)